package com.ovopark.organize.server.service;

import com.ovopark.organize.server.model.entity.FranchiseesRegistrationPlan;
import com.ovopark.organize.server.model.vo.FranchiseesRegistrationFollowVo;

import java.util.List;

/**
 * @Description:
 * @Author:zll
 * @Date:
 */
public interface FranchiseesRegistrationPlanService {

    FranchiseesRegistrationFollowVo saveOrUpdateVo(FranchiseesRegistrationFollowVo plan);
    FranchiseesRegistrationPlan saveOrUpdateBean(FranchiseesRegistrationPlan plan);

    FranchiseesRegistrationPlan getFollowById(Integer id);

    Boolean deletePlanById(Integer id, Integer groupId);

    List<FranchiseesRegistrationPlan> getRegistrationPlan(Integer registrationId, Integer followUpPlanStatus);

    Integer getNumByRegistrationId(Integer registrationId);
    List<Integer> findAllGroupIds();

    /**
     * 跟进计划 定时更新 计划状态
     * @param groupId
     */
    void synChangeRegistrationPlanStatus(Integer groupId);

    List<FranchiseesRegistrationPlan> getPlanByRegistrationId(Integer registrationId,Boolean filterClose);

    void updateFollowUpPlanStatusByRegistrationId(Integer groupId, List<Integer> registrationIds, Integer userId, Integer followUpStatusCancel, String followUpPlanReason);
}
